package beanstao.util.exception.base;

/**
 * 本框架应用异常树的根，系统内一般异常的基类。<BR>
 * 在没有特殊情况下，系统内所有创建的异常都是用此异常类。<BR>
 * 在该类之下派生两个类型的异常：<BR>
 * 1. BusinessException <BR>
 * 2. TechnicalException
 */
@SuppressWarnings("serial")
public class AppException extends FrameworkRuntimeException
{
	/**
	 * 类型的主方法。一般用来做测试使用。
	 * 
	 * @param args 方法的传入参数集合
	 */
	public static void main(String[] args)
	{
		new AppException("为什么我们的异常框架会报溢出错误。");
	}

	/**
	 * @param message 记录日志的消息
	 */
	public AppException(String message)
	{
		super(message);
	}

	/**
	 * @param message 记录日志的消息
	 * @param messageArg 异常描述的参数，用于错误描述中仅有一个参数的情况
	 */
	public AppException(String message, Object... messageArgs)
	{
		super(message, messageArgs);
	}

	/**
	 * @param cause 引起异常的原始异常
	 * @param message 记录日志的消息
	 */
	public AppException(String message, Throwable cause)
	{
		super(message, cause);
	}

	/**
	 * @param cause 引起异常的原始异常
	 */
	public AppException(Throwable cause)
	{
		super(cause);
	}

}
